home *** CD-ROM | disk | FTP | other *** search
- (*===========================================================================*)
- (* Update status line *)
- (* *)
- (* Copyright 1988, 1989 by H. Roy Engehausen. All rights reserved. *)
- (* *)
- (*===========================================================================*)
-
- PROCEDURE window_status_line(status_string : STRING);
- VAR
- i : BYTE;
- save_x : INTEGER;
- save_y : INTEGER;
- save_w : BYTE;
- t_str : ARRAY[1..window_max] OF STRING;
- w_no : BYTE;
- w_tcb : tcb_ptr;
-
- BEGIN;
-
- FOR i := 1 TO window_max DO
- t_str[i] := '';
-
- w_tcb := ring_tcb;
-
- REPEAT
-
- WITH w_tcb^ DO
- BEGIN;
- IF tcb_name <> '' THEN
- t_str[window] := t_str[window] + port_chan_s + ':' + tcb_name + ' ';
- w_tcb := w_tcb^.next_tcb;
- END;
-
- UNTIL w_tcb = ring_tcb;
-
- IF t_str[window_connect] = '' THEN
- t_str[window_connect] := 'Connect: None '
- ELSE
- t_str[window_connect] := 'Connect: ' + t_str[window_connect];
-
-
- t_str[window_monitor] := 'Monitor ';
-
- w_no := who_is_in_window(window_bottom_screen);
-
- IF window_array[window_operator].window_act THEN
- status_string := status_string + ' -- Operator ' +
- t_str[window_operator] + down_arrow + ' -- '
- ELSE
- status_string := status_string + ' -- ' + t_str[w_no]
- + down_arrow + ' -- ';
-
- w_no := who_is_in_window(window_top_screen);
-
- status_string := status_string + t_str[w_no] + up_arrow;
-
- save_x := WHEREX;
- save_y := WHEREY;
- save_w := current_window;
-
- window_select(window_reset);
-
- WINDOW( 1, window_location[window_reset].window_u_y,
- 80, window_location[window_reset].window_l_y);
-
- GOTOXY(1, window_location[window_top_screen].window_l_y + 1);
- COLOR(opt_block.status_color);
-
- CLREOL;
- WRITE(status_string);
-
- window_select(current_window);
- GOTOXY(save_x, save_y);
- COLOR(active_tcb^.w_color);
-
- END;